<!DOCTYPE html>
<html lang="zh">
<head>
    <meta charset="utf-8">
    <link rel="stylesheet" href="../css/style.css" type="text/css" media="screen">
</head>
<body>
    <div class="entry"> 
 <p>用于数组处理的一组函数。</p> 
 <p>数组的最大维数为四维。每一维索引编号为0至（数组大小 减 1）。例如，在50个元素的一维数组中，调用第一个元素用array[0]，最后一个元素用array[49]。</p> 
 <ul> 
  <li><strong><a href="383.html#ArrayBsearch">ArrayBsearch()</a></strong> – 数组搜索 </li> 
  <li><strong><a href="383.html#ArrayCopy">ArrayCopy()</a></strong> – 数组复制 </li> 
  <li><strong><a href="383.html#ArrayCopyRates">ArrayCopyRates()</a></strong> – 复制柱体(K线)数据到二维数组 </li> 
  <li><strong><a href="383.html#ArrayCopySeries">ArrayCopySeries()</a></strong> – 复制柱体(K线)数据到一维数组 </li> 
  <li><strong><a href="#ArrayDimension">ArrayDimension()</a></strong> – 返回数组维数 </li> 
  <li><strong><a href="#ArrayGetAsSeries">ArrayGetAsSeries()</a></strong> – 判断序列数组 </li> 
  <li><strong><a href="#ArrayInitialize">ArrayInitialize()</a></strong> – 数组初始化 </li> 
  <li><strong><a href="#ArrayIsSeries">ArrayIsSeries()</a></strong> – 判断数组是否序列化 </li> 
  <li><strong><a href="#ArrayMaximum">ArrayMaximum()</a></strong> – 返回数组中最大值的位置 </li> 
  <li><strong><a href="#ArrayMinimum">ArrayMinimum()</a></strong> – 返回数组中最小值的位置 </li> 
  <li><strong><a href="385.html#ArrayRange">ArrayRange()</a></strong> – 获取数组元素个数 </li> 
  <li><strong><a href="385.html#ArrayResize">ArrayResize()</a></strong> – 重设数组大小 </li> 
  <li><strong><a href="385.html#ArraySetAsSeries">ArraySetAsSeries()</a></strong> – 设置为序列化数组 </li> 
  <li><strong><a href="385.html#ArraySize">ArraySize()</a></strong> – 获取数组大小 </li> 
  <li><strong><a href="385.html#ArraySort">ArraySort()</a></strong> – 数组排序 </li> 
 </ul> 
 <p>&nbsp;</p> 
 <h2><a name="ArrayDimension"></a>ArrayDimension() – 返回数组维数</h2> 
 <pre class="brush: mql4; toolbar: false;">int ArrayDimension(object array[])</pre> 
 <p>返回数组的维数 </p> 
 <p>参数:</p> 
 <pre>array[] - 数组。</pre> 
 <p>示例:</p> 
 <pre class="brush: mql4; toolbar: false;">int num_array[10][5];
int dim_size;
dim_size=ArrayDimension(num_array);
// dim_size=2</pre> 
 <div class="divider top-of-page">
  <a title="Top of Page" href="#top">Back to Top</a>
 </div> 
 <h2><a name="ArrayGetAsSeries"></a>ArrayGetAsSeries() – 判断序列数组</h2> 
 <pre class="brush: mql4; toolbar: false;">bool ArrayDimension(object array[])</pre> 
 <p>如果数组是按序列数组形式排列(数组元素从最后到最开始排序过)，返回true，否则返回false </p> 
 <p>参数:</p> 
 <pre>array[] - 需要检测的数组。</pre> 
 <p>示例:</p> 
 <pre class="brush: mql4; toolbar: false;">  if(ArrayGetAsSeries(array1)==true)
    Print("array1 是作为序列数组排序");
  else
    Print("array1 正常排序(从左到右)");</pre> 
 <div class="divider top-of-page">
  <a title="Top of Page" href="#top">Back to Top</a>
 </div> 
 <h2><a name="ArrayInitialize"></a>ArrayInitialize() – 数组初始化</h2> 
 <pre class="brush: mql4; toolbar: false;">int ArrayInitialize(void array[], double value)</pre> 
 <p>数值型数组元素值设为同一个数值，返回己初始化的元素个数。</p> 
 <p>注：在自定义指标init()函数中不建议初始化指标缓冲区，在缓冲区分配和重分配内存时这种函数自动初始化为 "空值" 。</p> 
 <p>参数:</p> 
 <pre>array[] - 需要初始化的数组。
value - 设置的新值。 </pre> 
 <p>示例:</p> 
 <pre class="brush: mql4; toolbar: false;">  //----所有数组元素初始化2.1
  double myarray[10];
  ArrayInitialize(myarray,2.1);</pre> 
 <div class="divider top-of-page">
  <a title="Top of Page" href="#top">Back to Top</a>
 </div> 
 <h2><a name="ArrayIsSeries"></a>ArrayIsSeries() – 判断数组是否序列化</h2> 
 <pre class="brush: mql4; toolbar: false;">int ArrayIsSeries(object array[])</pre> 
 <p>如果数组经检查是序列的(像 Close[], Open[], High[], Low[], Time[] 或 Volume[] )，返回TRUE，否则，返回FALSE。</p> 
 <p>参数:</p> 
 <pre>array[] - 需要检测的数组。 </pre> 
 <p>示例:</p> 
 <pre class="brush: mql4; toolbar: false;">   if(ArrayIsSeries(array1)==false)
     ArrayInitialize(array1,0);
   else
     {
      Print("序列数组不能被初始化!");
      return(-1);
     }</pre> 
 <div class="divider top-of-page">
  <a title="Top of Page" href="#top">Back to Top</a>
 </div> 
 <h2><a name="ArrayMaximum"></a>ArrayMaximum() – 返回数组中最大值的位置</h2> 
 <pre class="brush: mql4; toolbar: false;">int ArrayMaximum(double array[], void count, void start)</pre> 
 <p>找出数组元素中最大值。函数返回数组元素最大值的下标。</p> 
 <p>参数:</p> 
 <pre>array[] - 要搜索的数值数组。
count - 要搜索的数组元素个数。
start - 开始搜索的初始下标值。</pre> 
 <p>示例:</p> 
 <pre class="brush: mql4; toolbar: false;">double num_array[15]={4,1,6,3,9,4,1,6,3,9,4,1,6,3,9};
int    maxValueidx=ArrayMaximum(num_array);
Print("最大值 = ", num_array[maxValueIdx]);</pre> 
 <div class="divider top-of-page">
  <a title="Top of Page" href="#top">Back to Top</a>
 </div> 
 <h2><a name="ArrayMinimum"></a>ArrayMinimum() – 返回数组中最小值的位置</h2> 
 <pre class="brush: mql4; toolbar: false;">int ArrayMinimum(double array[], void count, void start)</pre> 
 <p>找出数组元素中最小值。函数返回数组元素最小值的下标。</p> 
 <p>参数:</p> 
 <pre>array[] - 要搜索的数值数组。
count - 要搜索的数组元素个数。
start - 开始搜索的初始下标值。</pre> 
 <p>示例:</p> 
 <pre class="brush: mql4; toolbar: false;">double num_array[15]={4,1,6,3,9,4,1,6,3,9,4,1,6,3,9};
int    minValueidx=ArrayMinimum(num_array);
Print("最小值 = ", num_array[minValueIdx]);</pre> 
 <div class="divider top-of-page">
  <a title="Top of Page" href="#top">Back to Top</a>
 </div> 本文地址：
 <a href="384.html" rel="bookmark"><b>384.html</b></a> 
</div>
</body>
</html>